package com.ruoyi.basicsystem.domain;

import java.math.BigDecimal;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ruoyi.common.utils.CustomerBigDecimalSerialize;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 协议商品详情对象 zn_agreement_detail
 * 
 * @author nexiaozi
 * @date 2022-03-25
 */
public class ZnAgreementDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 协议id */
    @Excel(name = "协议id")
    private Long agreementId;

    /** 商品id */
    @Excel(name = "商品id")
    private Long materialId;
    /** 商品附表id */
    @Excel(name = "商品id")
    private Long materialExtendId;
    /** 协议价 */
    @Excel(name = "协议价")
    private BigDecimal salePrice;

    /** 客户id */
    @Excel(name = "客户id")
    private Long customerId;

    /** 租户id */
    @Excel(name = "租户id")
    private Long tenantId;

    /** 删除标记，0未删除，1删除 */
    @Excel(name = "删除标记，0未删除，1删除")
    private String deleteFlag;

    /** 协议当前采购价 */
    @JsonSerialize(using = CustomerBigDecimalSerialize.class)
    private BigDecimal purchasePrice;

    /** 当前毛利率 */
    private BigDecimal mlRatio;

    private Long orderNo;
    /** 以下 商品信息 */
//    materialName materialMfrs materialModel materialStandard materialColor materialExpiryNum materialWeight materialUnit materialBarCode materialSku materialWholesaleDecimal

    private String materialName;
    private String materialChineseChar;
    private String materialMfrs;
    private String materialModel;
    private String materialStandard;
    private String materialColor;
    private String materialExpiryNum;
    private String materialWeight;
    private String materialUnit;
    private String materialBarCode;
    private String materialSku;
    private BigDecimal materialWholesaleDecimal;
    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setAgreementId(Long agreementId) 
    {
        this.agreementId = agreementId;
    }

    public Long getAgreementId() 
    {
        return agreementId;
    }
    public void setMaterialId(Long materialId) 
    {
        this.materialId = materialId;
    }

    public Long getMaterialId() 
    {
        return materialId;
    }
    public void setSalePrice(BigDecimal salePrice) 
    {
        this.salePrice = salePrice;
    }

    public BigDecimal getSalePrice() 
    {
        return salePrice;
    }
    public void setCustomerId(Long customerId) 
    {
        this.customerId = customerId;
    }

    public Long getCustomerId() 
    {
        return customerId;
    }
    public void setTenantId(Long tenantId) 
    {
        this.tenantId = tenantId;
    }

    public Long getTenantId() 
    {
        return tenantId;
    }
    public void setDeleteFlag(String deleteFlag) 
    {
        this.deleteFlag = deleteFlag;
    }

    public String getDeleteFlag() 
    {
        return deleteFlag;
    }

    public Long getMaterialExtendId() {
        return materialExtendId;
    }

    public void setMaterialExtendId(Long materialExtendId) {
        this.materialExtendId = materialExtendId;
    }

    public String getMaterialName() {
        return materialName;
    }

    public void setMaterialName(String materialName) {
        this.materialName = materialName;
    }

    public String getMaterialMfrs() {
        return materialMfrs;
    }

    public void setMaterialMfrs(String materialMfrs) {
        this.materialMfrs = materialMfrs;
    }

    public String getMaterialModel() {
        return materialModel;
    }

    public void setMaterialModel(String materialModel) {
        this.materialModel = materialModel;
    }

    public String getMaterialStandard() {
        return materialStandard;
    }

    public void setMaterialStandard(String materialStandard) {
        this.materialStandard = materialStandard;
    }

    public String getMaterialColor() {
        return materialColor;
    }

    public void setMaterialColor(String materialColor) {
        this.materialColor = materialColor;
    }

    public String getMaterialExpiryNum() {
        return materialExpiryNum;
    }

    public void setMaterialExpiryNum(String materialExpiryNum) {
        this.materialExpiryNum = materialExpiryNum;
    }

    public String getMaterialWeight() {
        return materialWeight;
    }

    public void setMaterialWeight(String materialWeight) {
        this.materialWeight = materialWeight;
    }

    public String getMaterialUnit() {
        return materialUnit;
    }

    public void setMaterialUnit(String materialUnit) {
        this.materialUnit = materialUnit;
    }

    public String getMaterialBarCode() {
        return materialBarCode;
    }

    public void setMaterialBarCode(String materialBarCode) {
        this.materialBarCode = materialBarCode;
    }

    public String getMaterialSku() {
        return materialSku;
    }

    public void setMaterialSku(String materialSku) {
        this.materialSku = materialSku;
    }

    public BigDecimal getMaterialWholesaleDecimal() {
        return materialWholesaleDecimal;
    }

    public void setMaterialWholesaleDecimal(BigDecimal materialWholesaleDecimal) {
        this.materialWholesaleDecimal = materialWholesaleDecimal;
    }

    public BigDecimal getPurchasePrice() {
        return purchasePrice;
    }

    public void setPurchasePrice(BigDecimal purchasePrice) {
        this.purchasePrice = purchasePrice;
    }

    public BigDecimal getMlRatio() {
        return mlRatio;
    }

    public void setMlRatio(BigDecimal mlRatio) {
        this.mlRatio = mlRatio;
    }

    public String getMaterialChineseChar() {
        return materialChineseChar;
    }

    public void setMaterialChineseChar(String materialChineseChar) {
        this.materialChineseChar = materialChineseChar;
    }

    public Long getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(Long orderNo) {
        this.orderNo = orderNo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("agreementId", getAgreementId())
            .append("materialId", getMaterialId())
            .append("materialExtendId", getMaterialExtendId())
            .append("salePrice", getSalePrice())
            .append("purchasePrice", getPurchasePrice())
            .append("mlRatio", getMlRatio())
            .append("customerId", getCustomerId())
            .append("tenantId", getTenantId())
            .append("deleteFlag", getDeleteFlag())
            .toString();
    }
}
